Configuring RTCP XR

RTP Control Protocol Extended Reports (RTCP XR) is a VoIP management control that defines a set of metrics containing information for assessing VoIP call quality and for diagnosing problems. RTCP XR (RFC 3611) extends the RTCP reports defined in RFC 3550 by providing additional VoIP metrics (Quality of Experience). RTCP XR information publishing is implemented in the device according to RFC 6035. The draft defines how a SIP User Agent (UA) publishes the detailed information to a defined collector. RTCP XR measures VoIP call quality such as packet loss, delay, signal / noise / echo levels, estimated R-factor, and mean opinion score (MOS). RTCP XR measures these parameters using metrics as listed in the table below. RTCP XR messages containing key call-quality-related metrics are exchanged periodically (user-defined) between the device and the SIP UA. This allows an analyzer to monitor these metrics midstream, or a device to retrieve them through SNMP.

The RTCP XR feature is available only if the device is installed with a License Key that includes this feature. For installing a License Key, see License Key.
If the RTCP XR feature is unavailable (not licensed or disabled), the R-factor VoIP metrics are not provided in CDRs (CDR fields, Local R Factor and Remote R Factor) generated by the device. Instead, these CDR fields are sent with the value 127, meaning that information is unavailable.
While the device attempts to determine the signal level, it reports a MOS value of “127 (NA)”. Once it has determined the signal level, it reports the estimated MOS.
Packet loss effects voice quality estimation only during periods of voice. During periods of silence, packet loss doesn't effect or degrade voice quality.

You can configure the device to send RTCP XR to a specific IP Group. The device sends RTCP XR in SIP PUBLISH messages. The PUBLISH message contains the following RTCP XR related header values:

From and To: Telephone extension number of the user
Request-URI: IP Group name to where RTCP XR is sent
Event: "vq-rtcpxr"
Content-Type: "application/vq-rtcpxr"

You can also configure the stage of the call at which you want the device to send RTCP XR:

End of the call.
Periodically, according to a user-defined interval between consecutive reports.

The type of RTCP XR report event (VQReportEvent) supported by the device is VQSessionReport (SessionReport). The device can include local and remote metrics in the RTCP XR. Local metrics are generated by the device while remote metrics are provided by the remote endpoint. The following table lists the supported voice metrics (parameters) published in the RTCP XR.

RTCP XR Published VoIP Metrics

Metric

Parameter

Description

CallID

-

Call ID - call ID from the SIP dialog

LocalID

-

Local ID - identifies the reporting endpoint for the media session

RemoteID

-

Remote ID - identifies the remote endpoint of the media session

OrigID

-

Originating ID - Identifies the endpoint which originated the session

LocalAddr

-

Local Address - IP address, port, and SSRC of the endpoint/UA which is the receiving end of the stream being measured

RemoteAddr

-

Remote Address - IP address, port, and SSRC of the source of the stream being measured

LocalGroup

-

Local Group ID - identification for the purposes of aggregation for the local endpoint

RemoteGroup

-

Remote Group ID - identification for the purposes of aggregation for the remote endpoint

LocalMAC

-

Media Access Control (MAC) address of the local SIP device

Timestamps

START

Start time of the media session.

STOP

End time of the media session.

SessionDesc

PT

Payload Type - 'payload type' parameter in the RTP packets (i.e., the codec).

PD

Payload Description - description of the codec

SR

Sample Rate - rate at which the voice was sampled

FD

Frame Duration (msec) - packetization rate

FO

Frame Octets - number of octets in each frame per RTP packet

FPP

Frames per Packets - number of frames per RTP packet

PLC

Packet Loss Concealment - indicates whether a PLC algorithm was used for the session ("0" - unspecified; "1" - disabled; "2" - enhanced; "3" - standard)

SSUP

Silence Suppression State - indicates whether silence suppression, also known as Voice Activity Detection (VAD) is enabled ("on" or "off")

JitterBuffer

 

JBA

Jitter Buffer Adaptive - indicates the jitter buffer in the endpoint ("0" - unknown; "1" - reserved; "2" - non-adaptive; "3" - adaptive)

JBR

Jitter Buffer Rate

JBN

Jitter Buffer Nominal

JBM

Jitter Buffer Max

JBX

Jitter Buffer Abs Max

PacketLoss

NLR

Network Packet Loss Rate

JDR

Jitter Buffer Discard Rate

BurstGapLoss

BLD

Burst Loss Density

BD

Burst Duration

GLD

Gap Loss Density

GD

Gap Duration

GMIN

Minimum Gap Threshold

Delay

RTD

Round Trip Delay (msec)

ESD

End System Delay (msec)

OWD

One Way Delay (msec)

IAJ

Inter-Arrival Jitter (msec)

MAJ

Mean Absolute Jitter (msec)

Signal

SL

Signal Level (dB) - ratio of the signal level to a 0 dBm0 reference

NL

Noise Level (dB) - ratio of the silent period background noise level to a 0 dBm0 reference

RERL

Residual Echo Return Noise (dB) - ratio between the original signal and the echo level as measured after echo cancellation or suppression has been applied

QualityEst

RLQ

Listening Quality R - listening quality expressed as an R factor (0-95 for narrowband calls and 0-120 for wideband calls)

RLQEstAlg

RLQ Est. Algorithm - name (string) of the algorithm used to estimate RLQ

RCQ

Conversational Quality R - cumulative measurement of voice quality from the start of the session to the reporting time (R is 0-95 for narrowband calls and 0-120 for wideband calls)

RCQEstAlg

RCQ Est. Algorithm - name (string) of the algorithm used to estimate RCQ

EXTRI

External R In - voice quality as measured by the local endpoint for incoming connection on "other" side (R is 0-95 for narrowband calls and 0-120 for wideband calls)

ExtRIEstAlg

Ext. R In Est. Algorithm - name (string) of the algorithm used to estimate EXTRI

EXTRO

External R Out - value is copied from RTCP XR received from the remote endpoint on the "other" side of this endpoint (R is 0-95 for narrowband calls and 0-120 for wideband calls)

ExtROEstAlg

Ext. R Out Est. Algorithm - name (string) of the algorithm used to estimate EXTRO

MOSLQ

MOS-LQ - estimated mean opinion score for listening voice quality on a scale from 1 to 5, in which 5 represents excellent and 1 represents unacceptable

MOSLQEstAlg

MOS-LQ Est. Algorithm - name (string) of the algorithm used to estimate MOSLQ

MOSCQ

MOS-CQ - estimated mean opinion score for conversation voice quality on a scale from 1 to 5, in which 5 represents excellent and 1 represents unacceptable

MOSCQEstAlg

MOS-CQ Est. Algorithm - name (string) of the algorithm used to estimate MOSCQ

QoEEstAlg

QoE Est. Algorithm - name (string) of the algorithm used to estimate all voice quality metrics

DialogID

-

Identification of the SIP dialog with which the media session is related

Below shows an example of a SIP PUBLISH message sent with RTCP XR and QoE information:

PUBLISH sip:172.17.116.201 SIP/2.0
Via: SIP/2.0/UDP 172.17.116.201:5060;branch=z9hG4bKac2055925925
Max-Forwards: 70
From: <sip:172.17.116.201>;tag=1c2055916574
To: <sip:172.17.116.201>
Call-ID: 20559160721612201520952@172.17.116.201
CSeq: 1 PUBLISH
Contact: <sip:172.17.116.201:5060>
Allow: REGISTER,OPTIONS,INVITE,ACK,CANCEL,BYE,NOTIFY,PRACK,REFER,INFO,SUBSCRIBE,UPDATE
Event: vq-rtcpxr
Expires: 3600
User-Agent: device/7.40A.600.014
Content-Type: application/vq-rtcpxr
Content-Length: 1066
VQSessionReport
CallID=20328634741612201520943@172.17.116.201
LocalID: <sip:1000@172.17.116.201>
RemoteID: <sip:2000@172.17.116.202;user=phone>
OrigID: <sip:1000@172.17.116.201>
LocalAddr: IP=172.17.116.201 Port=6000 SSRC=0x54c62a13
RemoteAddr: IP=172.17.116.202 Port=6000 SSRC=0x243220dd
LocalGroup:
RemoteGroup:
LocalMAC: 00:90:8f:57:d9:71
LocalMetrics: 
Timestamps: START=2015-12-16T20:09:45Z STOP=2015-12-16T20:09:52Z
SessionDesc: PT=8 PD=PCMA SR=8000 FD=20 PLC=3 SSUP=Off
JitterBuffer: JBA=3 JBR=0 JBN=7 JBM=10 JBX=300
PacketLoss: NLR=0.00 JDR=0.00
BurstGapLoss: BLD=0.00 BD=0 GLD=0.00 GD=6325 GMIN=16
Delay: RTD=0 ESD=11
Signal: SL=-34 NL=-67 RERL=17
QualityEst: RLQ=93 MOSLQ=4.1
MOSCQ=4.10
RemoteMetrics: 
Timestamps: START=2015-12-16T20:09:45Z STOP=2015-12-16T20:09:52Z
JitterBuffer: JBA=3 JBR=0 JBN=0 JBM=0 JBX=300
PacketLoss: NLR=0.00 JDR=0.00
BurstGapLoss: BLD=0.00 BD=0 GLD=0.00 GD=0 GMIN=16
Delay: RTD=65535 ESD=0
QualityEst:
DialogID: 20328634741612201520943@172.17.116.201;to-tag=1c1690611502;from-tag=1c2032864069
To configure RTCP XR:
1. Open the RTP/RTCP Settings page (Setup menu > Signaling & Media tab > Media folder > RTP/RTCP Settings).
2. Under the RTCP-XR group, configure the following:
'Enable RTCP XR' (VQMonEnable) - enables voice quality monitoring and RTCP XR.
'Tx RTCP Packets Interval' (RTCPInterval) - defines the time interval between adjacent RTCP reports.
'Disable RTCP XR Interval Randomization' (DisableRTCPRandomize) - determines whether RTCP report intervals are randomized or whether each report interval accords exactly to the parameter RTCPInterval.
'Burst Threshold' (VQMonBurstHR) - defines the voice quality monitoring excessive burst alert threshold.
'Delay Threshold' (VQMonDelayTHR) - defines the voice quality monitoring excessive delay alert threshold.
'R-Value Delay Threshold' (VQMonEOCRValTHR) - defines the voice quality monitoring end of call low quality alert threshold.
'Minimum Gap Size' (VQMonGMin) - defines the voice quality monitoring minimum gap size (number of frames).

3. Under the RTCP-XR Collection Server group, configure the following:
'Publication IP Group ID' (PublicationIPGroupID): Configures the IP Group to where you want the device to send RTCP XR reports.
'SBC RTCP XR Report Mode' (SBCRtcpXrReportMode): Enables the sending of RTCP XR reports of QoE metrics at the end of each call session (i.e., after a SIP BYE).

4. Click Apply, and then restart the device with a save-to-flash for your settings to take effect.